package com.zmn.oms.model.dto.order.zmn;

import com.zmn.oms.common.dto.OmsStatusOperator;
import com.zmn.oms.model.dto.work.refund.RefundDTO;
import lombok.Data;
import lombok.ToString;

import java.util.List;

/**
 * 类描述: 普通新单
 *
 * @author liuying
 * @date 2018/11/26 4:34 PM
 */
@Data
@ToString(callSuper = true)
public class ZsNormalRefundWorkDTO extends OmsStatusOperator {

    /**
     * 源头工单id
     */
    private Long originalId;

    /**
     * 支付状态：1.未支付 2.支付中 3.部分支付 4.已支付 12.退款中 13.部分退款 14.已退款
     */
    private Integer payStatus;

    /**
     * 退款金额
     */
    private Integer refundAmount;

    /**
     * 退款工程师ID
     */
    private Integer masterId;

    /**
     * 退款工程师name
     */
    private String masterName;

    /**
     * 退款服务商ID
     */
    private Integer manageCompanyId;

    /**
     * 退款服务商name
     */
    private String manageCompanyName;

    /**
     * 退款服务商类型
     */
    private Integer manageCompanyType;

    /**
     * 退款缘由
     */
    private List<Integer> reasonIdList;

    /**
     * 退款缘由
     */
    private List<String> reasonNameList;

    /**
     * 原单师傅列表
     */
    private List<Integer> masterList;

    /**
     * 原单业务模式
     */
    private Integer bizMode;

    /**
     * 退款方式
     * 1 原路返回，2 线下退款
     * @see OrderConsts#ORDER_REFUND_TYPE_ONLINE
     */
    private Integer refundType;

    /**
     * 支付渠道
     */
    private Integer payChannelId;

    /**
     * 支付方式
     */
    private Integer payType;

    /**
     * 目标渠道
     */
    private Integer payTargetChannelId;

    /**
     * 收款人帐号
     */
    private String payeeThirdAccount;

    /**
     * 收款人帐号名称
     */
    private String payeeThirdAccountName;
    /**
     * 收款人一行
     */
    private String payeeThirdAccountBank;

    /**
     * 如果是返修单建退款单，那这个就是返修单id
     */
    private Long refundWorkId;

    /**
     * 是否需要审核
     */
    private boolean isRefundReview;

    /**
     * 新增DTO
     */
    private RefundDTO refundDTO;

}
